<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Gloze: enumeration</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Gloze
   &#160;<span id="projectnumber">1.01-beta2</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="components.html">Schema Components</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">enumeration </div>  </div>
</div>
<div class="contents">
<div class="textblock"><p>XML schema also allows a simple type restriction to be defined by enumeration. OWL Enumerations allow classes to be defined extensionally, in terms of their membership. For data-types, the class of values is specified as an OWL DataRange, with OWL oneOf listing the permitted range of values.</p>
<div class="fragment"><pre class="fragment">&lt;?xml version=<span class="stringliteral">&quot;1.0&quot;</span> encoding=<span class="stringliteral">&quot;UTF-8&quot;</span>?&gt;
&lt;xs:schema xmlns:xs=<span class="stringliteral">&quot;http://www.w3.org/2001/XMLSchema&quot;</span> 
        targetNamespace=<span class="stringliteral">&quot;http://example.org/&quot;</span> xmlns=<span class="stringliteral">&quot;http://example.org/&quot;</span>
        elementFormDefault=<span class="stringliteral">&quot;qualified&quot;</span>&gt;
        
        &lt;xs:element name=<span class="stringliteral">&quot;data&quot;</span>&gt;
                &lt;xs:simpleType&gt;
                        &lt;xs:restriction base=<span class="stringliteral">&quot;xs:int&quot;</span>&gt;
                                &lt;xs:enumeration value=<span class="stringliteral">&quot;0&quot;</span>/&gt;
                                &lt;xs:enumeration value=<span class="stringliteral">&quot;1&quot;</span>/&gt;
                        &lt;/xs:restriction&gt;
                &lt;/xs:simpleType&gt;
        &lt;/xs:element&gt;

        &lt;xs:element name=<span class="stringliteral">&quot;objects&quot;</span>&gt;
                &lt;xs:simpleType&gt;
                        &lt;xs:restriction base=<span class="stringliteral">&quot;xs:QName&quot;</span>&gt;
                                &lt;xs:enumeration value=<span class="stringliteral">&quot;foo&quot;</span>/&gt;
                                &lt;xs:enumeration value=<span class="stringliteral">&quot;bar&quot;</span>/&gt;
                        &lt;/xs:restriction&gt;
                &lt;/xs:simpleType&gt;
        &lt;/xs:element&gt;

&lt;/xs:schema&gt;
</pre></div><p>Because xs:QNames are not recommended for use in RDF (they depend on locally defined prefixes) they are fully expanded to form absolute URIs. The QNames that appear in the schema are unprefixed and so are defined in the default XML namespace.</p>
<div class="fragment"><pre class="fragment">@prefix ns2:     &lt;http:<span class="comment">//example.org/def/&gt; .</span>
@prefix rdfs:    &lt;http:<span class="comment">//www.w3.org/2000/01/rdf-schema#&gt; .</span>
@prefix ns1:     &lt;http:<span class="comment">//example.org/&gt; .</span>
@prefix xs_:     &lt;http:<span class="comment">//www.w3.org/2001/XMLSchema#&gt; .</span>
@prefix owl:     &lt;http:<span class="comment">//www.w3.org/2002/07/owl#&gt; .</span>
@prefix xsd:     &lt;http:<span class="comment">//www.w3.org/2001/XMLSchema#&gt; .</span>
@prefix rdf:     &lt;http:<span class="comment">//www.w3.org/1999/02/22-rdf-syntax-ns#&gt; .</span>
@prefix xs:      &lt;http:<span class="comment">//www.w3.org/2001/XMLSchema&gt; .</span>

&lt;http:<span class="comment">//example.org/enumeration.owl&gt;</span>
      a       owl:Ontology .

ns1:data
      a       rdf:Property , owl:DatatypeProperty ;
      rdfs:range
              [ a       owl:DataRange ;
                owl:oneOf (<span class="stringliteral">&quot;0&quot;</span>^^xsd:<span class="keywordtype">int</span> <span class="stringliteral">&quot;1&quot;</span>^^xsd:<span class="keywordtype">int</span>)
              ] .

ns1:objects
      a       rdf:Property , owl:ObjectProperty ;
      rdfs:range
              [ a       owl:Class ;
                owl:oneOf (ns1:foo ns1:bar)
              ] .
</pre></div> </div></div>


<hr class="footer"/><address class="footer"><small>
Generated on Tue Nov 15 2011 22:13:50 for Gloze by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
